package com.me.chat.mapper.relation;

import com.me.chat.pojo.relation.SingleRelation;
import com.me.chat.pojo.relation.SingleRelationReq;
import com.me.chat.pojo.relation.qo.SingleRelationQO;
import com.me.chat.pojo.relation.qo.SingleRelationReqQO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 联系人（好友）请求
 * @Authhor: qiu
 * @Date: 2021/12/18 11:42 上午
 */
public interface SingleRelationReqMapper {

    /**
     * 查询出当前登录人下的别人发来的请求
     * @param singleRelationReqQO 根据targetId 来分页查询
     * @return
     */
    List<SingleRelationReq> getSingleRelationReqByTargetId(SingleRelationReqQO singleRelationReqQO);
    
    /**
     * 根据接受者查询联系人请求数量
     * @param singleRelationReqQO
     * @return
     */
    int getSingleRelationReqCountByTargetId(SingleRelationReqQO singleRelationReqQO);

    /**
     * 判断该登录者是否已经对这个目标用户发起了好友请求，如果已经发送了将会返回一个请求id 反之是个null
     * @param singleRelationReqQO
     * @return
     */
    String getRelationReqIdByBothId(SingleRelationReqQO singleRelationReqQO);

    /**
     * 添加联系人请求
     * @param singleRelationReqQO
     */
    void addSingleRelationRequest(SingleRelationReqQO singleRelationReqQO);

    /**
     * 根据user1 user2 清空两个用户之间所有的用户请求
     * @param user1
     * @param user2
     */
    void clearSingleRelationRequest(@Param("user1")String user1,@Param("user2")String user2);
}
